# @rules_cc//cc:cc_binary.bzl

cc_binary(
    name = "simple_bazel_cpp",
    srcs = ["main.cc"],
)

cc_binary(
    name = "eigen3_test",
    srcs = ["eigen3_test.cc"],
    deps = ["@eigen"],
)

cc_binary(
    name = "fp_1_1",
    srcs = ["fp_1_1.cc"],
)

cc_binary(
    name = "fp_1_2",
    srcs = ["fp_1_2.cc"],
    deps = ["@range-v3//:range-v3"],
)

cc_binary(
    name = "fp_2_1",
    srcs = ["fp_2_1.cc"],
)

cc_binary(
    name = "fp_2_2",
    srcs = ["fp_2_2.cc"],
)

cc_binary(
    name = "fp_2_3",
    srcs = ["fp_2_3.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "fp_2_4",
    srcs = ["fp_2_4.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "recursion_1",
    srcs = ["recursion_1.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "glog_main",
    srcs = ["glog_main.cc"],
    deps = [
        "@glog",
    ],
)

cc_binary(
    name = "recursion_fib",
    srcs = ["recursion_fib.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "fp_3_1",
    srcs = ["fp_3_1.cc"],
)

cc_binary(
    name = "fp_3_2",
    srcs = ["fp_3_2.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "fp_3_3",
    srcs = ["fp_3_3.cc"],
)

cc_binary(
    name = "fp_3_4",
    srcs = ["fp_3_4.cc"],
)

cc_binary(
    name = "fp_4_1",
    srcs = ["fp_4_1.cc"],
)

cc_binary(
    name = "fp_4_2",
    srcs = ["fp_4_2.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "fp_4_3",
    srcs = ["fp_4_3.cc"],
)

cc_binary(
    name = "fp_5_1",
    srcs = ["fp_5_1.cc"],
)

cc_binary(
    name = "fp_6_1",
    srcs = ["fp_6_1.cc"],
)

cc_binary(
    name = "fp_6_2",
    srcs = ["fp_6_2.cc"],
)

cc_binary(
    name = "fp_6_3",
    srcs = ["fp_6_3.cc"],
    deps = [
        "//functional_programming/common",
    ],
)

cc_binary(
    name = "fp_7_1",
    srcs = ["fp_7_1.cc"],
    deps = [
        "//functional_programming/common",
        "@range-v3//:range-v3"
    ],
)

cc_binary(
    name = "fp_7_2",
    srcs = ["fp_7_2.cc"],
    deps = [
        "//functional_programming/common",
        "@range-v3//:range-v3"
    ],
)
